//package com.mi.rule.db.old;
//
//
//import com.baomidou.mybatisplus.core.conditions.Wrapper;
//import com.baomidou.mybatisplus.core.toolkit.Constants;
//import org.apache.ibatis.annotations.Param;
//import org.springframework.stereotype.Component;
//
//import java.io.Serializable;
//import java.util.List;
//import java.util.Map;
//
///**
// * @author 王永吉
// * @date 2020-01-14
// */
//@Component
//public interface MiMapper {
//    String TABLE_NAME = "tableName";
//    String ENTITY = "entity";
//    String ENTITY_LIST = "entityList";
//    String ENTITY_COLUMN = "entityColumn";
//    String COLUMN = "column";
//    String SQL_STRING = "sqlString";
//    String CONDITION = "condition";
//    String ID = "id";
//    String IDS = "ids";
//    String EW = "ew";
//
//    long _insert_by_str_(@Param(SQL_STRING) String sqlString);
//
//    long _insert_by_entity_(@Param(TABLE_NAME) String tableName, @Param(ENTITY_COLUMN) Map<?, ?> entityColumn,
//                            @Param(ENTITY) Object entity);
//
//    long _insert_by_map_(@Param(TABLE_NAME) String tableName, @Param(ENTITY) Map<?, ?> entity);
//
//    long _insert_batch_entity_(@Param(TABLE_NAME) String tableName, @Param(ENTITY_COLUMN) Map<?, ?> entityColumn,
//                               @Param(ENTITY_LIST) List<?> entityList);
//
//    <M extends Map<?, ?>> long _insert_batch_map_(@Param(TABLE_NAME) String tableName,
//                                                  @Param(ENTITY_LIST) List<M> entityList);
//
//    long _delete_by_str_(@Param(SQL_STRING) String tableName);
//
//    long _delete_by_id_(@Param(TABLE_NAME) String tableName, @Param(ID) Serializable id);
//
//    long _delete_by_ids_(@Param(TABLE_NAME) String tableName, @Param(IDS) List<Serializable> ids);
//
//    long _delete_by_wrapper_(@Param(TABLE_NAME) String tableName, @Param(Constants.WRAPPER) Wrapper<?> wrapper);
//
//    long _update_by_str_(@Param(SQL_STRING) String sqlString);
//
//    long _update_by_id_(@Param(TABLE_NAME) Object tableName, @Param("column") Map<?, ?> column,
//                        @Param(ENTITY) Object entity, @Param("idColumn") Object idColumn, @Param("id") Object id);
//
//    long _update_by_ids_(@Param(TABLE_NAME) Object tableName, @Param("column") Map<?, ?> column,
//                         @Param(ENTITY) Object entity, @Param("idColumn") Object idColumn, @Param(IDS) List<Serializable> ids);
//
//    long _update_by_map_id_(@Param(TABLE_NAME) Object tableName, @Param(ENTITY) Map<?, ?> entity,
//                            @Param("id") Object id);
//
//    long _update_by_map_ids_(@Param(TABLE_NAME) Object tableName, @Param(ENTITY) Map<?, ?> entity,
//                             @Param(IDS) List<Serializable> ids);
//
//    long _update_by_wrapper_(@Param(TABLE_NAME) Object tableName, @Param("column") Map<?, ?> column,
//                             @Param(ENTITY) Object entity, @Param(Constants.WRAPPER) Wrapper<?> wrapper);
//
//    long _update_by_map_wrapper_(@Param(TABLE_NAME) Object tableName, @Param(ENTITY) Map<?, ?> entity,
//                                 @Param(Constants.WRAPPER) Wrapper<?> wrapper);
//
//    long _update_by_wrapper_set_sql_(@Param(TABLE_NAME) Object tableName, @Param("sqlSet") String sqlSet,
//                                     @Param(Constants.WRAPPER) Wrapper<?> wrapper);
//
//
//    long _count_by_wrapper_(@Param("fromTable") String fromTable, @Param("join") String join,
//                            @Param("column") Object column, @Param(Constants.WRAPPER) Wrapper<?> ew);
//
//    long _count_by_str_(@Param("fromTable") String fromTable, @Param("join") String join,
//                        @Param("column") Object column, @Param("condition") String condition);
//
//    long _count_by_str_2_(@Param(SQL_STRING) String sqlString);
//
//    long _count_by_id_(@Param(TABLE_NAME) String tableName, @Param("column") Object column, @Param(ID) Object id);
//
//
//    Map<?, ?> _select_one_str_(@Param(SQL_STRING) String sqlString);
//
//    List<Map<?, ?>> _select_list_str_(@Param(SQL_STRING) String sqlString);
//
//    Map<?, ?> _select_one_by_str_(@Param("selectColumn") String selectColumn, @Param("fromTable") String fromTable,
//                                  @Param("join") String join, @Param("condition") String condition);
//
//    Map<?, ?> _select_one_by_wrapper_(@Param("selectColumn") String selectColumn, @Param("fromTable") String fromTable,
//                                      @Param("join") String join, @Param(EW) Wrapper<?> wrapper);
//
//    List<Map<?, ?>> _select_list_by_str_(@Param("selectColumn") String selectColumn, @Param("fromTable") String fromTable,
//                                         @Param("join") String join, @Param("condition") String condition);
//
//    List<Map<?, ?>> _select_list_by_wrapper_(@Param("selectColumn") String selectColumn, @Param("fromTable") String fromTable,
//                                             @Param("join") String join, @Param(EW) Wrapper<?> wrapper);
//
//    List<Map<?, ?>> _page_by_wrapper_(
//            @Param("selectColumn") String selectColumn,
//            @Param("fromTable") String fromTable,
//            @Param("join") String join,
//            @Param("limit") long limit, @Param("offset") long offset,
//            @Param(Constants.WRAPPER) Wrapper<?> ew);
//
//    List<Map<?, ?>> _page_by_str_(
//            @Param(SQL_STRING) String sqlString,
//            @Param("limit") long limit,
//            @Param("offset") long offset);
//
//    long _delete_by_map_(@Param(TABLE_NAME) String tableName, @Param("column") Map<?, ?> column);
//}
